home *** CD-ROM | disk | FTP | other *** search
- ************************************************************************
- ******************* Standard Rev 2. Made 21/03-93 By Newtec ***********
- ************************************************************************
- ************************************************************************
- ******************* Functions: ***********
- ******************* ***********
- ******************* SendError() ***********
- ******************* SendOK() ***********
- ******************* OpenLibs(Version)(d0) ;Opens Dos,Int,Gfx,Util,GadT*
- ******************* CloseLibs() ;Close Dos,Int,Gfx,Util,GadT*
- ************************************************************************
-
- ;incdir 'Code:include/'
- ;include 'HandleWB'
- ;include 'Standard'
- ;
- ;bsr InitWB
- ;bsr OpenLibs
- ;beq ExitWB
- ;...
- ;bsr CloseLibs
- ;clr.l d0
- ;bra ExitWB
-
- ;----------------------------------------------------------------------
- SendError: clr.l d0
- rts
- SendOK: moveq #-1,d0
- rts
- ;----------------------------------------------------------------------
- OpenLibs: move.l d0,d7 ;Save Version #
- move.b d7,LibVer
- move.l 4.w,a6
-
- lea.l DosName(pc),a1
- move.l d7,d0 ;Version
- jsr -552(a6) ;OpenLib
- tst.l d0
- beq.b .BadLibs
- move.l d0,DosBase
-
- lea.l IntName(pc),a1
- move.l d7,d0 ;Version
- jsr -552(a6) ;OpenLib
- tst.l d0
- beq.b .BadLibs
- move.l d0,IntBase
-
- lea.l GfxName(pc),a1
- move.l d7,d0 ;Version
- jsr -552(a6) ;OpenLib
- tst.l d0
- beq.b .BadLibs
- move.l d0,GfxBase
-
- lea.l UtilName(pc),a1
- move.l d7,d0 ;Version
- jsr -552(a6) ;OpenLib
- move.l d0,UtilBase ;Don't care if it wouldn't open!
-
- lea.l GTName(pc),a1
- move.l d7,d0 ;Version
- jsr -552(a6) ;OpenLib
- move.l d0,GTBase ;Don't care if it wouldn't open!
- bra.b SendOK
- .BadLibs: move.l 4.w,a6
- lea.l IntName(pc),a1
- jsr -408(a6)
- move.l d0,a6
- moveq #0,d0 ;Alertnum
- move.l #30,d1
- lea.l .BadLibsMsg(pc),a0
- jsr -90(a6) ;DisplayAlert
- bra.w SendError
-
- .BadLibsMsg: dc.b 0,212,17,'Your Kickstart Is Too Old !',0
- even
- ;----------------------------------------------------------------------
- CloseLibs: move.l 4.w,a6
- ; move.l DosBase(pc),a1
- ; cmp.l #0,a1
- ; beq.w .1
- ; jsr -414(a6) ;CloseLib - Don't close Dos if the
- ;tool is quitted with Exit() !!
- .1: move.l IntBase(pc),a1
- cmp.l #0,a1
- beq.b .2
- jsr -414(a6) ;CloseLib
-
- .2: move.l GfxBase,a1
- cmp.l #0,a1
- beq.b .3
- jsr -414(a6) ;CloseLib
-
- .3: move.l UtilBase(pc),a1
- cmp.l #0,a1
- beq.b .4
- jsr -414(a6) ;CloseLib
-
- .4: move.l GTBase(pc),a1
- cmp.l #0,a1
- beq.w SendError
- jmp -414(a6) ;CloseLib
- ;----------------------------------------------------------------------
- DosName: dc.b 'dos.library',0
- IntName: dc.b 'intuition.library',0
- GfxName: dc.b 'graphics.library',0
- UtilName: dc.b 'utility.library',0
- GTName: dc.b 'gadtools.library',0
- LibVer: dc.b 0 ;Version of libraries
- even
- DosBase: dc.l 0
- IntBase: dc.l 0
- UtilBase: dc.l 0
- GTBase: dc.l 0
- GfxBase: dc.l 0
- even
-